เมนูนำทาง
การชักตัวอย่างเรซัฟวาร์ Reservoir with Random Sortอัลกอริธึมเรซัฟวาร์แบบง่ายๆสามารถออกแบบโดยใช้การจัดเรียงแบบสุ่ม และดำเนินการโดยใช้โครงสร้างข้อมูลคิวลำดับความสำคัญ อัลกอริทึมนี้กำหนดจำนวนสุ่มเป็นคีย์แต่ละรายการและเก็บรักษา k รายการที่มีค่าต่ำสุดสำหรับคีย์ ในสาระสำคัญนี้เทียบเท่ากับการกำหนดหมายเลขสุ่มให้แต่ละรายการเป็นคีย์ การเรียงลำดับรายการโดยใช้คีย์เหล่านี้และรับรายการ k ด้านบน เวลาทำงานที่แย่ที่สุดของอัลกอริทึมคือ O(n log k) ขณะที่เวลาที่ดีที่สุดคือ O(n)
(* S is a stream of items to sample, R will contain the result S.Current returns current item in stream S.Next advances stream to next position max-priority-queue supports: Count -> number of items in priority queue Maximum -> returns maximum key value of all items Extract-Max() -> Remove the item with max key Insert(key, Item) -> Adds item with specified key *)ReservoirSample(S[1..?], R[1..k]) H = new max-priority-queue while S has data r = Random(0,1) if H.Count < k H.Insert(r, S.Current) else if H.Maximum > r H.Extract-Max() H.Insert(r, S.Current) S.Next
เมนูนำทาง
การชักตัวอย่างเรซัฟวาร์ Reservoir with Random Sortใกล้เคียง
การชันสูตรพลิกศพ การชัก การชักจากไข้สูง การชักจูงทางจิตวิทยา การชักตัวอย่างเรซัฟวาร์ การชักว่าว การชั่งน้ำหนัก การชักดาบ กรรชัย กำเนิดพลอย การอับปางของเรืออาร์เอ็มเอส ไททานิกแหล่งที่มา
WikiPedia: การชักตัวอย่างเรซัฟวาร์ https://www.geeksforgeeks.org/reservoir-sampling/